...Think Long-term, Plan Carefully...

Purpose

All students are expected to work in teams on an exciting, open-ended, blockchain-related, quarter-long project, in a sense, operating and simulating startup environments. Needless to say, this rewarding experience is accompanied by a significant exploration and development effort that spans hands-on experience on a variety of blockchain technologies.

This course is complementary to the classical well-formed, prescriptive model of assignments/projects that are indeed effective and invaluable in practice. Instead by design, the course project is intended to be open-ended, namely, minimal instructions and requirements will be provided, as such it rewards and values research & development, taking risks, above all, it is aimed to foster and tap into the creativity of each individual.

Project Description

The project must be done in groups of five, and the role and contributions of each group member must be clearly articulated. All projects must be approved and supervised by the instructor. The outcome of the final project will consist of (1) designing novel consensus protocols, benchmarking and studying existing consensus protocols, developing novel techniques or architectures to improve the performance of a blockchain fabric (e.g., sharding), or developing novel applications for blockchain; (2) writing a grant proposal for startup seed funding or a short research paper with the goal of submitting to a top-tier conference, of course, the actual submission is optional and does not affect your final grade. All project-related reports must be written in LaTex using ACM templates.

Grant Proposal
Whether you choose the grant proposal or research paper route, there needs to be a proof-of-concept prototype of your ideas in order to demonstrate feasibility or effectiveness. For the grant proposal track, we will adopt the well-known Small Business Innovation Research (SBIR) program that fosters commercialization of research ideas by small businesses. SBIR project description template can be found here.

For the research paper track, we adopt standard conference-style paper such as (PVLDB or SIGMOD). An example of a well-written blockchain research paper would be ResilientDB, and many more examples can be found in our ECS265 course.

Research Paper
A research papers (and/or presentation slides) would consist of the following key components
  1. Motivation (why this problem is important and interesting)
  2. Gap (what are the challenges and what are the shortcomings of the most relevant work)
  3. Problem statement
  4. Key intuitions behind your proposed approach and sketch of the solution in a top-down approach
  5. Key benefits of your proposed approach
  6. Overall architecture/design of your solution
  7. Details of your solution
  8. Analytical correctness and complexity results
  9. Implementation Details
  10. Evaluation methodology and plans (competing algorithms, datasets, platforms, etc.)
  11. Empirical results (e.g., latency, throughput, precision, recall, f-measure, etc.)
  12. List of contributions and their importance (both scientific and technical contributions)
  13. Conclusions
  14. Future Directions/Next Steps

Benchmarking Paper
A benchmarking papers (and/or presentation slides) would consist of the following key components
  1. Motivation (why this problem is important and interesting)
  2. Gap (what are the challenges and what are the shortcomings of the most relevant benchmarking work)
  3. Problem statement
  4. A brief survey/discussion of relevant approaches/systems
  5. Justification for choosing these approaches/systems
  6. Evaluation Methodology:
    machines/cluster requirements & setup, single-node and multi-nodes configurations in-memory vs. disk-based approaches, selected systems/engines, data workloads (synthetic data and/or real data), query workloads, types of experiments.
  7. List of your contributions and their importance (both scientific and technical contributions)
  8. Conclusions
  9. Future Directions/Next Steps

Project Check-in & Feedback

It is important that tangible progress is made every week. Progress must be captured in slides and can be any of the following categories. To make healthy progress, we need to satisfy one or more of the categories below each week. Of course, there could be an exception if you have several tests/exams, etc. in one week. But generally, it is important to have a consistent and healthy momentum. To make steady progress, at least one of the categories below must be fulfilled each week.

  • Proposing a new well-thought idea (captured clearly on the slide),
  • Solidifying an existing idea or algorithm (captured clearly on the slide),
  • Providing correctness or time/space complexity proofs of the proposed algorithms/protocols,
  • Formulating a set of new challenges with partial solutions (also captured clearly on the slides),
  • Developing a module of the ongoing research prototype,
  • Reporting detailed implementation progress,
  • Evaluating and presenting a set of experimental results, and/or
  • Completing the write-up for several sections of a research paper

Team Dynamics

For each group, it is recommended that each member lead one aspect of the project while contributing and learning about other parts. It is further recommended a project manager is elected within a group to coordinate all efforts and manage the group dynamics in addition to making technical contributions to the project.

A fact of life, when there is group work, whether at school or in society, there are occasional conflicts; and it is crucial to learn how to resolve our differences and be receptive, open, and kind to one another. In kindness and reflection, we shall aim to resolve all conflicts. It is the group's responsibility to handle all internal affairs, and only when absolutely necessary involving the instructor. But note, only under very rare exceptional circumstances, a group re-structuring would be granted because once the group is formed, at least for 10 weeks, we must learn how to work with each other in harmony.

Project Evaluation

The final project grade will be based upon the following components (all submissions are due at midnight):
  • Project Proposal Report (2 pages):   20% (Due on October 23, 2020)
    [Project Pitch Template]
  • Planning Report (4 pages):   20% (Due on November 6, 2020)
    [Building upon project proposal, identifying key milestones/objectives broken down into activities and tasks, timelines, and associated risks, and what has been achieved so far...]
  • Mid-term Progress Report (8 pages):   20% (Due on November 20, 2020)
    [Reporting on the outcome of your group-defined milestones and highlighting any unexpected challenges faced and resolution paths]
  • Final Review Report (12 pages):   40% (Due on December 11, 2020)
    [SBIR Project Description Template, Research Paper]

Project Highlights - Fall 2020

Excited to announce several top projects that were developed this quarter.
  • CryptoLunch:   A decentralized, anonymous, and intuitive way to split a bill, built around Ethereum, ReactJS, Node.js, and Swift.
  • Resilient Record:   Dynamic decentralized access control using ResilientDB.
  • Promise:   A platform designed to create verbal contracts and revolutionize the way we make agreements using blockchain technology. [ECS265 Project]